package com.ruoyi.system.service;

import java.util.List;

import com.alibaba.fastjson.JSONObject;
import com.ruoyi.system.domain.AppUser;

/**
 * app用户Service接口
 * 
 * @author ruoyi
 * @date 2021-07-13
 */
public interface IAppUserService 
{
    /**
     * 查询app用户
     * 
     * @param id app用户ID
     * @return app用户
     */
    public AppUser selectAppUserById(Long id);

    /**
     * 查询app用户列表
     * 
     * @param appUser app用户
     * @return app用户集合
     */
    public List<AppUser> selectAppUserList(AppUser appUser);

    /**
     * 新增app用户
     * 
     * @param appUser app用户
     * @return 结果
     */
    public int insertAppUser(AppUser appUser);

    /**
     * 修改app用户
     * 
     * @param appUser app用户
     * @return 结果
     */
    public int updateAppUser(AppUser appUser);

    /**
     * 批量删除app用户
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteAppUserByIds(String ids);

    /**
     * 删除app用户信息
     * 
     * @param id app用户ID
     * @return 结果
     */
    public int deleteAppUserById(Long id);

    /**
     * 通过账号查询用户
     * @param userName
     * @return
     */
    public AppUser getAppUserByUserName(String userName);

    /**
     * 通过uuid查询用户
     * @param uuid
     * @return
     */
    public AppUser getAppUserByUuid(String uuid);

    /**
     * 通过账号密码查询用户
     * @param appUser
     * @return
     */
    public AppUser getAppUserByUserNameAndPassword(AppUser appUser);

    /**
     * 统计数据
     * @return
     */
    JSONObject statistical();
}
